package com.kuang.gulimall.cart.service;

import com.kuang.gulimall.cart.vo.CartItemVo;
import com.kuang.gulimall.cart.vo.CartVo;

import java.util.List;


public interface CartService {

    /**
     * 将商品添加到购物车
     * @param skuId
     * @param num
     * @return
     */
    CartItemVo addToCart(Long skuId, Integer num);

    /**
     * 展示到购物车
     * @param skuId
     * @return
     */
    CartItemVo getCartItem(Long skuId);

    /**获取整个购物车
     *
     * @return
     */
    CartVo getCart();

    /**
     * 清空购物车
     *
     * @param cartkey
     */
    public void clearCart(String cartkey);

    /**
     * 勾选购物项
     * @param skuId
     * @param check
     */
    void checkItem(Long skuId, Integer check);

    /**修改数量
     *
     * @param skuId
     * @param num
     */
    void countItem(Long skuId, Integer num);

    /**删除购物项
     *
     * @param deleteId
     */
    void deleteItem(Long deleteId);

    /**获取购物车选中的商品
     *
     * @return
     */
    List<CartItemVo> getUserCartItems();
}
